package com.ztorn.fiscale.service.impl;

import java.util.List;
import com.ztorn.common.core.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ztorn.fiscale.mapper.FiscalePlatformTypeMapper;
import com.ztorn.fiscale.domain.FiscalePlatformType;
import com.ztorn.fiscale.service.IFiscalePlatformTypeService;

/**
 * 平台类型配置Service业务层处理
 * 
 * @author ztorn
 * @date 2024-01-01
 */
@Service
public class FiscalePlatformTypeServiceImpl implements IFiscalePlatformTypeService 
{
    @Autowired
    private FiscalePlatformTypeMapper fiscalePlatformTypeMapper;

    /**
     * 查询平台类型配置
     * 
     * @param typeId 平台类型配置主键
     * @return 平台类型配置
     */
    @Override
    public FiscalePlatformType selectFiscalePlatformTypeByTypeId(Long typeId)
    {
        return fiscalePlatformTypeMapper.selectFiscalePlatformTypeByTypeId(typeId);
    }

    /**
     * 查询平台类型配置列表
     * 
     * @param fiscalePlatformType 平台类型配置
     * @return 平台类型配置
     */
    @Override
    public List<FiscalePlatformType> selectFiscalePlatformTypeList(FiscalePlatformType fiscalePlatformType)
    {
        return fiscalePlatformTypeMapper.selectFiscalePlatformTypeList(fiscalePlatformType);
    }

    /**
     * 查询启用的平台类型列表
     * 
     * @return 平台类型配置集合
     */
    @Override
    public List<FiscalePlatformType> selectActivePlatformTypes()
    {
        return fiscalePlatformTypeMapper.selectActivePlatformTypes();
    }

    /**
     * 根据类型编码查询平台类型
     * 
     * @param typeCode 类型编码
     * @return 平台类型配置
     */
    @Override
    public FiscalePlatformType selectFiscalePlatformTypeByTypeCode(String typeCode)
    {
        return fiscalePlatformTypeMapper.selectFiscalePlatformTypeByTypeCode(typeCode);
    }

    /**
     * 新增平台类型配置
     * 
     * @param fiscalePlatformType 平台类型配置
     * @return 结果
     */
    @Override
    public int insertFiscalePlatformType(FiscalePlatformType fiscalePlatformType)
    {
        fiscalePlatformType.setCreateTime(DateUtils.getNowDate());
        return fiscalePlatformTypeMapper.insertFiscalePlatformType(fiscalePlatformType);
    }

    /**
     * 修改平台类型配置
     * 
     * @param fiscalePlatformType 平台类型配置
     * @return 结果
     */
    @Override
    public int updateFiscalePlatformType(FiscalePlatformType fiscalePlatformType)
    {
        fiscalePlatformType.setUpdateTime(DateUtils.getNowDate());
        return fiscalePlatformTypeMapper.updateFiscalePlatformType(fiscalePlatformType);
    }

    /**
     * 批量删除平台类型配置
     * 
     * @param typeIds 需要删除的平台类型配置主键
     * @return 结果
     */
    @Override
    public int deleteFiscalePlatformTypeByTypeIds(Long[] typeIds)
    {
        return fiscalePlatformTypeMapper.deleteFiscalePlatformTypeByTypeIds(typeIds);
    }

    /**
     * 删除平台类型配置信息
     * 
     * @param typeId 平台类型配置主键
     * @return 结果
     */
    @Override
    public int deleteFiscalePlatformTypeByTypeId(Long typeId)
    {
        return fiscalePlatformTypeMapper.deleteFiscalePlatformTypeByTypeId(typeId);
    }
}